package com.siwei.mes.entity.tgl;

import com.siwei.mes.common.validator.bus.SyncGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;


/**
 * TGL-任务单(TglTrwd)实体类
 *
 * @author yangke
 * @since 2023-12-20 22:21:50
 */
@Data
@Table(name = "tgl_trwd")
@ApiModel(value = "TglTrwd", description = "TGL-任务单")
public class TglTrwd implements Serializable {
    private static final long serialVersionUID = -17475085079601801L;

    /**
     * 主键id
     */
    @Id
    @ApiModelProperty(value = "主键ID", name = "id")
    private Long id;
    /**
     * 任务单号
     */
    @Id
    @ApiModelProperty(value = "TGL-trwd主键ID", name = "frwdh")
    private Integer frwdh;
    /**
     * 合同编号
     */
    @Column(name = "FHtbh")
    @ApiModelProperty(value = "合同编号", name = "fhtbh")
    private String fhtbh;
    /**
     * 任务性质
     */
    @Column(name = "FRwxz")
    @ApiModelProperty(value = "任务性质", name = "frwxz")
    private String frwxz;
    /**
     * 任务来源
     */
    @Column(name = "FRwly")
    @ApiModelProperty(value = "任务来源", name = "frwly")
    private String frwly;
    /**
     * 状态
     */
    @Column(name = "FZt")
    @ApiModelProperty(value = "状态", name = "fzt")
    private String fzt;
    /**
     * 单位名称
     */
    @Column(name = "FHtdw")
    @ApiModelProperty(value = "单位名称", name = "fhtdw")
    private String fhtdw;
    /**
     * 工程名称
     */
    @Column(name = "FGcmc")
    @ApiModelProperty(value = "工程名称", name = "fgcmc")
    private String fgcmc;
    /**
     * 工程级别
     */
    @Column(name = "FGcjb")
    @ApiModelProperty(value = "工程级别", name = "fgcjb")
    private String fgcjb;
    /**
     * 工程类别
     */
    @Column(name = "FGclb")
    @ApiModelProperty(value = "工程类别", name = "fgclb")
    private String fgclb;
    /**
     * 施工部位
     */
    @Column(name = "FJzbw")
    @ApiModelProperty(value = "施工部位", name = "fjzbw")
    private String fjzbw;
    /**
     * 泵送
     */
    @Column(name = "FJzfs")
    @ApiModelProperty(value = "泵送", name = "fjzfs")
    private String fjzfs;
    /**
     * 施工地点
     */
    @Column(name = "FGcdz")
    @ApiModelProperty(value = "施工地点", name = "fgcdz")
    private String fgcdz;
    /**
     * 运距
     */
    @Column(name = "FGls")
    @ApiModelProperty(value = "运距", name = "fgls")
    private Double fgls;
    /**
     * 计划日期
     */
    @Column(name = "FJhrq")
    @ApiModelProperty(value = "计划日期", name = "fjhrq")
    private String fjhrq;
    /**
     * 砼品种
     */
    @Column(name = "FTpz")
    @ApiModelProperty(value = "砼品种", name = "ftpz")
    private String ftpz;
    /**
     * 坍落度
     */
    @Column(name = "FTld")
    @ApiModelProperty(value = "坍落度", name = "ftld")
    private String ftld;
    /**
     * 水泥品种
     */
    @Column(name = "FSnbh")
    @ApiModelProperty(value = "水泥品种", name = "fsnbh")
    private String fsnbh;
    /**
     * 石子规格
     */
    @Column(name = "FSzgg")
    @ApiModelProperty(value = "石子规格", name = "fszgg")
    private String fszgg;
    /**
     * 备注|渗料规格|外加剂规格|抗渗等级|其他要求|施工单位联系人|工程编号|营销部门联系人|监督号码|优先采用的仓库编号|监控系统工地号|质检员
     */
    @Column(name = "FTbj")
    @ApiModelProperty(value = "备注|渗料规格|外加剂规格|抗渗等级|其他要求|施工单位联系人|工程编号|营销部门联系人|监督号码|优先采用的仓库编号|监控系统工地号|质检员", name = "ftbj")
    private String ftbj;
    /**
     * 计划方量
     */
    @Column(name = "FJhsl")
    @ApiModelProperty(value = "计划方量", name = "fjhsl")
    private Double fjhsl;
    /**
     * 生产拌台
     */
    @Column(name = "FScbt")
    @ApiModelProperty(value = "生产拌台", name = "fscbt")
    private String fscbt;
    /**
     * 完成方量/砼数量
     */
    @Column(name = "FWcsl")
    @ApiModelProperty(value = "完成方量/砼数量", name = "fwcsl")
    private Double fwcsl;
    /**
     * 累计车数
     */
    @Column(name = "FLjcs")
    @ApiModelProperty(value = "累计车数", name = "fljcs")
    private Integer fljcs;
    /**
     * 下达任务
     */
    @Column(name = "FXdrw")
    @ApiModelProperty(value = "下达任务", name = "fxdrw")
    private String fxdrw;
    /**
     * 操作员
     */
    @Column(name = "FCzy")
    @ApiModelProperty(value = "操作员", name = "fczy")
    private String fczy;
    /**
     * 登录日期
     */
    @Column(name = "FDlrq")
    @ApiModelProperty(value = "登录日期", name = "fdlrq")
    private String fdlrq;
    /**
     * 施工配合比号
     */
    @Column(name = "FSgpb")
    @ApiModelProperty(value = "施工配合比号", name = "fsgpb")
    private Integer fsgpb;
    /**
     * 试验员
     */
    @Column(name = "FSyy1")
    @ApiModelProperty(value = "试验员", name = "fsyy1")
    private String fsyy1;
    /**
     * 砂浆配合比号
     */
    @Column(name = "FSjpb")
    @ApiModelProperty(value = "砂浆配合比号", name = "fsjpb")
    private Integer fsjpb;
    /**
     * 试验员
     */
    @Column(name = "FSyy2")
    @ApiModelProperty(value = "试验员", name = "fsyy2")
    private String fsyy2;
    /**
     * 砼单价
     */
    @Column(name = "FTdj")
    @ApiModelProperty(value = "砼单价", name = "ftdj")
    private Double ftdj;
    /**
     * 砼金额
     */
    @Column(name = "FTje")
    @ApiModelProperty(value = "砼金额", name = "ftje")
    private Double ftje;
    /**
     * 泵送数量
     */
    @Column(name = "FBssl")
    @ApiModelProperty(value = "泵送数量", name = "fbssl")
    private Double fbssl;
    /**
     * 泵送单价
     */
    @Column(name = "FBsdj")
    @ApiModelProperty(value = "泵送单价", name = "fbsdj")
    private Double fbsdj;
    /**
     * 泵送金额
     */
    @Column(name = "FBsje")
    @ApiModelProperty(value = "泵送金额", name = "fbsje")
    private Double fbsje;
    /**
     * 任务单号
     */
    @Column(name = "FRwno")
    @ApiModelProperty(value = "任务单号", name = "frwno")
    private String frwno;
    /**
     * 搅拌时间
     */
    @Column(name = "FJbsj")
    @ApiModelProperty(value = "搅拌时间", name = "fjbsj")
    private Integer fjbsj;
    /**
     * 出砼门控制参数
     */
    @Column(name = "FClsjNo")
    @ApiModelProperty(value = "出砼门控制参数", name = "fclsjno")
    private Integer fclsjno;
    /**
     * 配合比号
     */
    @Column(name = "FPhbNo")
    @ApiModelProperty(value = "配合比号", name = "fphbno")
    private String fphbno;
    /**
     * 配合比id
     */
    @Column(name = "FPhbId")
    @ApiModelProperty(value = "配合比id", name = "fphbid")
    private String fphbid;
    /**
     * 容重
     */
    @Column(name = "FRz")
    @ApiModelProperty(value = "容重", name = "frz")
    private String frz;

    @Column(name = "updateTime")
    @ApiModelProperty(value = "修改时间", name = "updatetime")
    private Date updatetime;
    /**
     * 外援总方数
     */
    @Column(name = "Fwyzfs")
    @ApiModelProperty(value = "外援总方数", name = "fwyzfs")
    private Double fwyzfs;
    /**
     * 外援总车数
     */
    @Column(name = "Fwyzcs")
    @ApiModelProperty(value = "外援总车数", name = "fwyzcs")
    private Integer fwyzcs;

    @Column(name = "FVersion")
    @ApiModelProperty(value = "${column.comment}", name = "fversion")
    private Date fversion;
    /**
     * 同步时间戳
     */
    @Column(name = "synctime")
    @ApiModelProperty(value = "同步时间戳", name = "synctime")
    @NotNull(groups = {SyncGroup.class}, message = "同步时间戳为空")
    private Long synctime;

    @Transient
    @ApiModelProperty(value = "实际总发货数", name = "fhquantity")
    private Float fhquantity;
}
